<template>
  <!--vue原生动画-进入与离开-->
  <transition name="slide">
    <!--模态框组件-->
    <div class="modal" v-show="showModal">
      <!--遮罩层-->
      <div class="mask"></div>
      <!--弹框-->
      <div class="modal-dialog">
        <div class="modal-header">
          <span>{{title}}</span>
          <a href="javascript:;" class="icon-close" @click="$emit('cancel')"></a>
        </div>
        <div class="modal-body">
          <slot name="body"></slot>
        </div>
        <div class="modal-footer">
          <a href="javascript:;" class="btn" v-if="btnType==1" @click="$emit('submit')">{{sureText}}</a>
          <a href="javascript:;" class="btn" v-if="btnType==2" @click="$emit('cancel')">{{cancelText}}</a>
          <div class=" btn-group" v-if="btnType==3">
            <a href="javascript:;" class="btn" @click="$emit('submit')">{{sureText}}</a>
            <a href="javascript:;" class="btn btn-default" @click="$emit('cancel')">{{cancelText}}</a>
          </div>
        </div>
      </div>
    </div>
  </transition>
</template>

<script>
  export default {
    name: "Modal",
    data() {
      return {}
    },
    props: {
      //弹框类型:小框small，中框middle，大框large,表单form
      modalType: {
        type: String,
        default: 'form',
      },
      //弹框标题
      title: String,
      //按钮类型：1.只有确定按钮 2.只有取消按钮 3.确定取消都有
      btnType: String,
      sureText: {
        type: String,
        default: '确定'
      },
      cancelText: {
        type: String,
        default: '取消'
      },
      showModal: {
        type: Boolean,
        // default() {
        // return false;
        // }
        default: false
      },
    }
  }
</script>

<style scoped lang="scss">
  @import "~@/assets/scss/config.scss";
  @import "~@/assets/scss/mixin.scss";
  @import "~@/assets/scss/modal.scss";
</style>
